#!/bin/bash

#-------------------------
# 将此脚本添加到xcode 的 Run Scropt 的 shell 脚本里面
#-------------------------

# 设置目标文件夹和最终产品的框架.
FMK_NAME=${PROJECT_NAME}

# 安装目录将框架的最终输出.
# 下面创建它，在当前项目的根文件夹.
INSTALL_DIR=${SRCROOT}/Products/${FMK_NAME}.framework

# 目录将框架创建后删除.
WRK_DIR=build
DEVICE_DIR=${WRK_DIR}/Release-iphoneos/${FMK_NAME}.framework
SIMULATOR_DIR=${WRK_DIR}/Release-iphonesimulator/${FMK_NAME}.framework

# -configuration ${CONFIGURATION}
# 清洁和建筑结构.
xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphoneos clean build
xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphonesimulator clean build

# 清理老的框架.
if [ -d "${INSTALL_DIR}" ]
then
rm -rf "${INSTALL_DIR}"
fi

mkdir -p "${INSTALL_DIR}"

cp -R "${DEVICE_DIR}/" "${INSTALL_DIR}/"

# 采用 Lipo 命令合并两个二进制文件（i386/x86_64/armv6/armv7/armv7s）成一个通用的最终产品.
lipo -create "${DEVICE_DIR}/${FMK_NAME}" "${SIMULATOR_DIR}/${FMK_NAME}" -output "${INSTALL_DIR}/${FMK_NAME}"

# 查看 frameWork 包含的设备类别 
lipo -info "${INSTALL_DIR}/${FMK_NAME}"

rm -r "${WRK_DIR}"

open "${INSTALL_DIR}"